<!-- 电影列表 -->
<template>
  <main>
    <div
      class="list-item"
      v-for="m in list"
      :key="m.id"
      @click="handleClick(m)"
    >
      <div class="img">
        <img :src="m.img" :alt="m.videoName" />
      </div>
      <div class="title">
        <h1>{{ m.nm }}</h1>
        <h2>{{ m.cat }}</h2>
        <h2>{{ m.desc }}</h2>
        <h3>{{ m.showInfo }}</h3>
      </div>
      <ListButton :m="m"></ListButton>
    </div>
  </main>
</template>

<script>
//这里可以导入其他文件（比如：组件，工具js，第三方插件js，json文件，图片文件等等）
//例如：import 《组件名称》 from '《组件路径》';
import ListButton from "./ListButton.vue";
export default {
  props: ["list"],
  //import引入的组件需要注入到对象中才能使用
  components: {
    ListButton,
  },
  data() {
    //这里存放数据
    return {};
  },
  //监听属性 类似于data概念
  computed: {},
  //监控data中的数据变化
  watch: {},
  //方法集合
  methods: {
    handleClick(m) {
      this.$router.push({
        path: "/details",
        query: {
          nm: m.nm,
          id: m.id,
        },
      });
    },
  },
  //生命周期 - 创建完成（可以访问当前this实例）
  created() {},
  //生命周期 - 挂载完成（可以访问DOM元素）
  mounted() {},
  beforeCreate() {}, //生命周期 - 创建之前
  beforeMount() {}, //生命周期 - 挂载之前
  beforeUpdate() {}, //生命周期 - 更新之前
  updated() {}, //生命周期 - 更新之后
  beforeDestroy() {}, //生命周期 - 销毁之前
  destroyed() {}, //生命周期 - 销毁完成
  activated() {}, //如果页面有keep-alive缓存功能，这个函数会触发
};
</script>
<style lang='less' scoped>
@import url("@/assets/border.less");
.list-item {
  display: flex;
  margin: 0 0 0.12rem 0.12rem;
  padding-bottom: 0.12rem;
  .border-1px(0 0 1px 0);
  &:first-child {
    margin-top: 0.12rem;
  }
  &:last-child {
    .border-1px(0);
  }
  .img {
    padding-right: 0.12rem;
    img {
      width: 0.64rem;
      height: 0.9rem;
    }
  }

  .title {
    flex: 1;
    color: #666;
    h1 {
      font-size: 0.18rem;
    }

    h2 {
      font-weight: 100;
    }

    h3 {
      font-weight: 100;
      color: #999;
    }
  }
}
</style>